package org.common.utils.tool;

import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
import java.util.Properties;

/**
 * 环境工具类
 * @author zhouzhibing
 * @date 2025/4/11
 */
public class EnvTool {

    /**
     * 环境参数列表
     */
    private static final Map<String, String> ALL_ENV = initAllEnv();

    /**
     * 合并获取环境参数
     * @return 获取合并后环境参数
     */
    private static Map<String , String> initAllEnv() {
        Properties appEnv = System.getProperties();
        Map<String, String> sysEnv = System.getenv();

        Map<String , String> map = new HashMap<>(appEnv.size() + sysEnv.size());
        map.putAll(sysEnv);
        for (Map.Entry<Object , Object> entry : appEnv.entrySet()) {
            map.put(entry.getKey().toString() , entry.getValue().toString());
        }
        return Collections.unmodifiableMap(map);
    }

    /**
     * @return 获取所有环境参数
     */
    public static Map<String , String> getAllEnv() {
        return ALL_ENV;
    }



}
